#!/bin/bash

#######################################
# Test scull
#######################################
sudo dmesg -c
sudo ./scull_load


echo "abcd" > /dev/scull
cat /dev/scull
cat /proc/scullmem
cat /proc/scullseq

dd if=/dev/zero of=/dev/scull bs=1024 count=262144
cat /proc/scullmem
cat /proc/scullseq


sudo ./scull_unload
sudo dmesg -c

#######################################
# Test scullpipe 
#######################################
sudo dmesg -c
sudo ./scull_load
ll /dev/scullp*
sudo dmesg -c

cat /dev/scullpipe
sudo dmesg -c
echo "abcd" > /dev/scullpipe
sudo dmesg -c

sudo ./scull_unload
sudo dmesg -c

../misc-progs/nbtest
../misc-progs/nbtest 5
strace ../misc-progs/nbtest 5


#######################################
# Test scullpipe poll
#######################################
sudo dmesg -c
sudo ./scull_load
ll /dev/scullp*
sudo dmesg -c

../misc-progs/polltest

sudo dmesg -c
echo "abcd" > /dev/scullpipe
sudo dmesg -c

sudo ./scull_unload
sudo dmesg -c

#######################################
# Test scullpipe async
#######################################
sudo dmesg -c
sudo ./scull_load
ll /dev/scullp*
sudo dmesg -c

../misc-progs/asynctest

sudo dmesg -c
echo "abcd" > /dev/scullpipe
sudo dmesg -c

sudo ./scull_unload
sudo dmesg -c


#######################################
# Test scullsingle 
#######################################
sudo dmesg -c
sudo ./scull_load
ll /dev/scullsingle
sudo dmesg -c

../misc-progs/singletest

#another tty
sudo dmesg -c
echo "abcd" > /dev/scullsingle
sudo dmesg -c
cat /dev/scullsingle
sudo dmesg -c

sudo ./scull_unload
sudo dmesg -c


#######################################
# Test sculluid 
#######################################
sudo dmesg -c
sudo ./scull_load
ll /dev/sculluid
sudo dmesg -c

../misc-progs/uidtest

#another tty by renmian
./uidtest

sudo dmesg -c
echo "abcd" > /dev/sculluid
sudo dmesg -c
cat /dev/sculluid
sudo dmesg -c

sudo ./scull_unload
sudo dmesg -c


#######################################
# Test scullwuid 
#######################################
sudo dmesg -c
sudo ./scull_load
ll /dev/scullwuid
sudo dmesg -c

../misc-progs/wuidtest

#another tty by renmian
./wuidtest

sudo dmesg -c
echo "abcd" > /dev/scullwuid
sudo dmesg -c
cat /dev/scullwuid
sudo dmesg -c

sudo ./scull_unload
sudo dmesg -c




#######################################
# Test scullpriv 
#######################################
sudo dmesg -c
sudo ./scull_load
ll /dev/scullpriv
sudo dmesg -c

sudo dmesg -c
echo "abcd" > /dev/scullpriv
cat /dev/scullpriv
sudo dmesg -c

# another tty
cat /dev/scullpriv
sudo dmesg -c

sudo ./scull_unload
sudo dmesg -c
